using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Attributes;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Attributes.DomainAttributes;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Enums;
using System.Collections.Generic;
using System.ComponentModel;

namespace Baci.ArcGIS._ServerTools._Caching
{
    /// <summary>
    /// <para>Export Map Server Cache</para>
    /// <para>Exports tiles from a map image layer cache as a cache dataset or tile package to a folder on disk. The tiles can be imported into other caches, or they can be accessed from ArcGIS Desktop or mobile devices as a raster dataset, independent from their parent service.</para>
    /// <para>将切片从地图图像图层缓存导出为缓存数据集或切片包到磁盘上的文件夹。切片可以导入到其他缓存中，也可以作为栅格数据集从 ArcGIS Desktop 或移动设备进行访问，独立于其父服务。</para>
    /// </summary>    
    [DisplayName("Export Map Server Cache")]
    public class ExportMapServerCache : AbstractGPProcess
    {
        /// <summary>
        /// 无参构造
        /// </summary>
        public ExportMapServerCache()
        {

        }

        /// <summary>
        /// 有参构造
        /// </summary>
        /// <param name="_input_service">
        /// <para>Input Service</para>
        /// <para>The map image layer with the cache tiles to be exported. You can choose it by browsing to the desired service in a portal or you can drag a web tile layer from the Portal tab in the Project pane to supply this parameter.</para>
        /// <para>包含要导出的缓存切片的地图图像图层。您可以通过浏览至门户中的所需服务来选择它，也可以从工程窗格的门户选项卡拖动 Web 切片图层以提供此参数。</para>
        /// </param>
        /// <param name="_target_cache_path">
        /// <para>Target Cache Path</para>
        /// <para>The folder into which the cache will be exported. This folder does not have to be a registered server cache directory. The ArcGIS Server account must have write access to the target cache folder. If the server account cannot be granted write access to the destination folder but the ArcGIS Desktop or ArcGIS Pro client has write access to it, choose the Copy data from server parameter.</para>
        /// <para>将缓存导出到的文件夹。此文件夹不必是已注册的服务器缓存目录。ArcGIS Server 帐户必须具有对目标缓存文件夹的写入权限。如果无法向服务器帐户授予对目标文件夹的写入权限，但 ArcGIS Desktop 或 ArcGIS Pro 客户端具有对目标文件夹的写入权限，请选择从服务器复制数据参数。</para>
        /// </param>
        /// <param name="_export_cache_type">
        /// <para>Export cache type</para>
        /// <para><xdoc>
        ///   <para>Exports a cache as a cache dataset or a tile package. Tile packages are suitable for ArcGIS Runtime and ArcGIS Mobile deployments.</para>
        ///   <bulletList>
        ///     <bullet_item>Cache dataset—A map or image service cache that is generated using ArcGIS Server. It can be used in ArcGIS Desktop and by ArcGIS Server map or image services. This is the default.</bullet_item><para/>
        ///     <bullet_item>Tile package—A single compressed file where the cache dataset is added as a layer and consolidated so that it can be shared. In can be used in ArcGIS Desktop, ArcGIS Runtime, and mobile apps.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>将缓存导出为缓存数据集或切片包。切片包适用于 ArcGIS Runtime 和 ArcGIS Mobile 部署。</para>
        ///   <bulletList>
        ///     <bullet_item>缓存数据集 - 使用 ArcGIS Server 生成的地图或影像服务缓存。它可以在 ArcGIS Desktop 以及 ArcGIS Server 地图或影像服务中使用。这是默认设置。</bullet_item><para/>
        ///     <bullet_item>切片包 - 单个压缩文件，其中缓存数据集将添加为图层并合并，以便可以共享。In 可用于 ArcGIS Desktop、ArcGIS Runtime 和移动应用程序。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// </param>
        /// <param name="_copy_data_from_server">
        /// <para>Copy data from server</para>
        /// <para><xdoc>
        ///   <para>Check this parameter only if the ArcGIS Server account cannot be granted write access to the target folder and the ArcGIS Desktop or ArcGIS Pro client has write access to it. The software exports the tiles in the server output directory before moving them to the target folder.</para>
        ///   <bulletList>
        ///     <bullet_item>Checked—Tiles are placed in the server output directory and are then moved to the target folder. The ArcGIS Desktop client must have write access to the target folder.</bullet_item><para/>
        ///     <bullet_item>Unchecked—Tiles are exported directly into the target folder. The ArcGIS Server account must have write access to the target folder.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>仅当无法授予 ArcGIS Server 帐户对目标文件夹的写入权限，并且 ArcGIS Desktop 或 ArcGIS Pro 客户端具有对目标文件夹的写入权限时，才选中此参数。软件会先导出服务器输出目录中的切片，然后再将其移动到目标文件夹。</para>
        ///   <bulletList>
        ///     <bullet_item>选中 - 切片放置在服务器输出目录中，然后移动到目标文件夹。ArcGIS Desktop 客户端必须具有对目标文件夹的写入权限。</bullet_item><para/>
        ///     <bullet_item>未选中 - 切片将直接导出到目标文件夹中。ArcGIS Server 帐户必须具有对目标文件夹的写入权限。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// </param>
        /// <param name="_storage_format_type">
        /// <para>Storage Format Type</para>
        /// <para><xdoc>
        ///   <para>The storage format of the exported cache.</para>
        ///   <bulletList>
        ///     <bullet_item>Compact— Tiles are grouped in bundle and bundlex files to save space on disk and allow for faster copying of caches. If the Export cache type parameter is set to Tile package, this is the default.</bullet_item><para/>
        ///     <bullet_item>Compact V2— Tiles are grouped in bundle files only. This format provides better performance on network shares and cloudstore directories. If the Export cache type parameter is set to Tile package then the extension of the tile package is (.tpkx),which is supported by newer versions of the ArcGIS Platform such as ArcGIS Online, ArcGIS Enterprise 10.9 and ArcGIS Runtime 100.5.</bullet_item><para/>
        ///     <bullet_item>Exploded—Each tile is stored as an individual file (the way caches were stored prior to ArcGIS Server).</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>导出缓存的存储格式。</para>
        ///   <bulletList>
        ///     <bullet_item>紧凑 - 切片分组为捆绑包和 捆绑包x 文件，以节省磁盘空间并允许更快地复制缓存。如果导出缓存类型参数设置为切片包，则这是默认设置。</bullet_item><para/>
        ///     <bullet_item>Compact V2— 切片仅分组到包文件中。此格式在网络共享和云存储目录上提供更好的性能。如果导出缓存类型参数设置为切片包，则切片包的扩展名为 （.tpkx），该扩展名为 （.tpkx），该扩展名为 ArcGIS Online、ArcGIS Enterprise 10.9 和 ArcGIS Runtime 100.5 等较新版本的 ArcGIS Platform。</bullet_item><para/>
        ///     <bullet_item>分解 - 每个切片都存储为一个单独的文件（ArcGIS Server 之前缓存的存储方式）。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// </param>
        /// <param name="_scales">
        /// <para>Scales</para>
        /// <para>A list of scale levels at which tiles will be exported.</para>
        /// <para>将导出切片的比例级别列表。</para>
        /// </param>
        public ExportMapServerCache(object _input_service, object _target_cache_path, _export_cache_type_value _export_cache_type, _copy_data_from_server_value _copy_data_from_server, _storage_format_type_value _storage_format_type, List<object> _scales)
        {
            this._input_service = _input_service;
            this._target_cache_path = _target_cache_path;
            this._export_cache_type = _export_cache_type;
            this._copy_data_from_server = _copy_data_from_server;
            this._storage_format_type = _storage_format_type;
            this._scales = _scales;
        }
        public override string ToolboxName => "Server Tools";

        public override string ToolName => "Export Map Server Cache";

        public override string CallName => "server.ExportMapServerCache";

        public override List<string> AcceptEnvironments => [];

        public override object[] ParameterInfo => [_input_service, _target_cache_path, _export_cache_type.GetGPValue(), _copy_data_from_server.GetGPValue(), _storage_format_type.GetGPValue(), _scales, _num_of_caching_service_instances, _area_of_interest, _export_extent, _overwrite.GetGPValue(), _output_cache_path];

        /// <summary>
        /// <para>Input Service</para>
        /// <para>The map image layer with the cache tiles to be exported. You can choose it by browsing to the desired service in a portal or you can drag a web tile layer from the Portal tab in the Project pane to supply this parameter.</para>
        /// <para>包含要导出的缓存切片的地图图像图层。您可以通过浏览至门户中的所需服务来选择它，也可以从工程窗格的门户选项卡拖动 Web 切片图层以提供此参数。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Input Service")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public object _input_service { get; set; }


        /// <summary>
        /// <para>Target Cache Path</para>
        /// <para>The folder into which the cache will be exported. This folder does not have to be a registered server cache directory. The ArcGIS Server account must have write access to the target cache folder. If the server account cannot be granted write access to the destination folder but the ArcGIS Desktop or ArcGIS Pro client has write access to it, choose the Copy data from server parameter.</para>
        /// <para>将缓存导出到的文件夹。此文件夹不必是已注册的服务器缓存目录。ArcGIS Server 帐户必须具有对目标缓存文件夹的写入权限。如果无法向服务器帐户授予对目标文件夹的写入权限，但 ArcGIS Desktop 或 ArcGIS Pro 客户端具有对目标文件夹的写入权限，请选择从服务器复制数据参数。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Target Cache Path")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public object _target_cache_path { get; set; }


        /// <summary>
        /// <para>Export cache type</para>
        /// <para><xdoc>
        ///   <para>Exports a cache as a cache dataset or a tile package. Tile packages are suitable for ArcGIS Runtime and ArcGIS Mobile deployments.</para>
        ///   <bulletList>
        ///     <bullet_item>Cache dataset—A map or image service cache that is generated using ArcGIS Server. It can be used in ArcGIS Desktop and by ArcGIS Server map or image services. This is the default.</bullet_item><para/>
        ///     <bullet_item>Tile package—A single compressed file where the cache dataset is added as a layer and consolidated so that it can be shared. In can be used in ArcGIS Desktop, ArcGIS Runtime, and mobile apps.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>将缓存导出为缓存数据集或切片包。切片包适用于 ArcGIS Runtime 和 ArcGIS Mobile 部署。</para>
        ///   <bulletList>
        ///     <bullet_item>缓存数据集 - 使用 ArcGIS Server 生成的地图或影像服务缓存。它可以在 ArcGIS Desktop 以及 ArcGIS Server 地图或影像服务中使用。这是默认设置。</bullet_item><para/>
        ///     <bullet_item>切片包 - 单个压缩文件，其中缓存数据集将添加为图层并合并，以便可以共享。In 可用于 ArcGIS Desktop、ArcGIS Runtime 和移动应用程序。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Export cache type")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public _export_cache_type_value _export_cache_type { get; set; }

        public enum _export_cache_type_value
        {
            /// <summary>
            /// <para>Tile package</para>
            /// <para>Tile package—A single compressed file where the cache dataset is added as a layer and consolidated so that it can be shared. In can be used in ArcGIS Desktop, ArcGIS Runtime, and mobile apps.</para>
            /// <para>切片包 - 单个压缩文件，其中缓存数据集将添加为图层并合并，以便可以共享。In 可用于 ArcGIS Desktop、ArcGIS Runtime 和移动应用程序。</para>
            /// </summary>
            [Description("Tile package")]
            [GPEnumValue("TILE_PACKAGE")]
            _TILE_PACKAGE,

            /// <summary>
            /// <para>Cache dataset</para>
            /// <para>Cache dataset—A map or image service cache that is generated using ArcGIS Server. It can be used in ArcGIS Desktop and by ArcGIS Server map or image services. This is the default.</para>
            /// <para>缓存数据集 - 使用 ArcGIS Server 生成的地图或影像服务缓存。它可以在 ArcGIS Desktop 以及 ArcGIS Server 地图或影像服务中使用。这是默认设置。</para>
            /// </summary>
            [Description("Cache dataset")]
            [GPEnumValue("CACHE_DATASET")]
            _CACHE_DATASET,

        }

        /// <summary>
        /// <para>Copy data from server</para>
        /// <para><xdoc>
        ///   <para>Check this parameter only if the ArcGIS Server account cannot be granted write access to the target folder and the ArcGIS Desktop or ArcGIS Pro client has write access to it. The software exports the tiles in the server output directory before moving them to the target folder.</para>
        ///   <bulletList>
        ///     <bullet_item>Checked—Tiles are placed in the server output directory and are then moved to the target folder. The ArcGIS Desktop client must have write access to the target folder.</bullet_item><para/>
        ///     <bullet_item>Unchecked—Tiles are exported directly into the target folder. The ArcGIS Server account must have write access to the target folder.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>仅当无法授予 ArcGIS Server 帐户对目标文件夹的写入权限，并且 ArcGIS Desktop 或 ArcGIS Pro 客户端具有对目标文件夹的写入权限时，才选中此参数。软件会先导出服务器输出目录中的切片，然后再将其移动到目标文件夹。</para>
        ///   <bulletList>
        ///     <bullet_item>选中 - 切片放置在服务器输出目录中，然后移动到目标文件夹。ArcGIS Desktop 客户端必须具有对目标文件夹的写入权限。</bullet_item><para/>
        ///     <bullet_item>未选中 - 切片将直接导出到目标文件夹中。ArcGIS Server 帐户必须具有对目标文件夹的写入权限。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Copy data from server")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public _copy_data_from_server_value _copy_data_from_server { get; set; }

        public enum _copy_data_from_server_value
        {
            /// <summary>
            /// <para>COPY_DATA</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("COPY_DATA")]
            [GPEnumValue("true")]
            _true,

            /// <summary>
            /// <para>DO_NOT_COPY</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("DO_NOT_COPY")]
            [GPEnumValue("false")]
            _false,

        }

        /// <summary>
        /// <para>Storage Format Type</para>
        /// <para><xdoc>
        ///   <para>The storage format of the exported cache.</para>
        ///   <bulletList>
        ///     <bullet_item>Compact— Tiles are grouped in bundle and bundlex files to save space on disk and allow for faster copying of caches. If the Export cache type parameter is set to Tile package, this is the default.</bullet_item><para/>
        ///     <bullet_item>Compact V2— Tiles are grouped in bundle files only. This format provides better performance on network shares and cloudstore directories. If the Export cache type parameter is set to Tile package then the extension of the tile package is (.tpkx),which is supported by newer versions of the ArcGIS Platform such as ArcGIS Online, ArcGIS Enterprise 10.9 and ArcGIS Runtime 100.5.</bullet_item><para/>
        ///     <bullet_item>Exploded—Each tile is stored as an individual file (the way caches were stored prior to ArcGIS Server).</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>导出缓存的存储格式。</para>
        ///   <bulletList>
        ///     <bullet_item>紧凑 - 切片分组为捆绑包和 捆绑包x 文件，以节省磁盘空间并允许更快地复制缓存。如果导出缓存类型参数设置为切片包，则这是默认设置。</bullet_item><para/>
        ///     <bullet_item>Compact V2— 切片仅分组到包文件中。此格式在网络共享和云存储目录上提供更好的性能。如果导出缓存类型参数设置为切片包，则切片包的扩展名为 （.tpkx），该扩展名为 （.tpkx），该扩展名为 ArcGIS Online、ArcGIS Enterprise 10.9 和 ArcGIS Runtime 100.5 等较新版本的 ArcGIS Platform。</bullet_item><para/>
        ///     <bullet_item>分解 - 每个切片都存储为一个单独的文件（ArcGIS Server 之前缓存的存储方式）。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Storage Format Type")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public _storage_format_type_value _storage_format_type { get; set; }

        public enum _storage_format_type_value
        {
            /// <summary>
            /// <para>Compact V2</para>
            /// <para>Compact V2— Tiles are grouped in bundle files only. This format provides better performance on network shares and cloudstore directories. If the Export cache type parameter is set to Tile package then the extension of the tile package is (.tpkx),which is supported by newer versions of the ArcGIS Platform such as ArcGIS Online, ArcGIS Enterprise 10.9 and ArcGIS Runtime 100.5.</para>
            /// <para>Compact V2— 切片仅分组到包文件中。此格式在网络共享和云存储目录上提供更好的性能。如果导出缓存类型参数设置为切片包，则切片包的扩展名为 （.tpkx），该扩展名为 （.tpkx），该扩展名为 ArcGIS Online、ArcGIS Enterprise 10.9 和 ArcGIS Runtime 100.5 等较新版本的 ArcGIS Platform。</para>
            /// </summary>
            [Description("Compact V2")]
            [GPEnumValue("COMPACT_V2")]
            _COMPACT_V2,

            /// <summary>
            /// <para>Compact</para>
            /// <para>Compact— Tiles are grouped in bundle and bundlex files to save space on disk and allow for faster copying of caches. If the Export cache type parameter is set to Tile package, this is the default.</para>
            /// <para>紧凑 - 切片分组为捆绑包和 捆绑包x 文件，以节省磁盘空间并允许更快地复制缓存。如果导出缓存类型参数设置为切片包，则这是默认设置。</para>
            /// </summary>
            [Description("Compact")]
            [GPEnumValue("COMPACT")]
            _COMPACT,

            /// <summary>
            /// <para>Exploded</para>
            /// <para>Exploded—Each tile is stored as an individual file (the way caches were stored prior to ArcGIS Server).</para>
            /// <para>分解 - 每个切片都存储为一个单独的文件（ArcGIS Server 之前缓存的存储方式）。</para>
            /// </summary>
            [Description("Exploded")]
            [GPEnumValue("EXPLODED")]
            _EXPLODED,

        }

        /// <summary>
        /// <para>Scales</para>
        /// <para>A list of scale levels at which tiles will be exported.</para>
        /// <para>将导出切片的比例级别列表。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Scales")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public List<object> _scales { get; set; }


        /// <summary>
        /// <para>Number of caching service instances</para>
        /// <para>Specifies the number of instances that will be used to update or generate the tiles. The value for this parameter is set to unlimited (-1) and cannot be modified.</para>
        /// <para>指定将用于更新或生成切片的实例数。此参数的值设置为无限制 （-1），无法修改。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Number of caching service instances")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public long? _num_of_caching_service_instances { get; set; } = null;


        /// <summary>
        /// <para>Area Of Interest</para>
        /// <para><xdoc>
        ///   <para>An area of interest that spatially constrains where tiles are exported from the cache. This parameter is useful if you want to export irregularly shaped areas, as the tool clips the cache dataset at pixel resolution.</para>
        ///   <para>If you do not specify an area of interest, the full extent of the map is exported.</para>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>在空间上限制切片从缓存中导出的位置的感兴趣区域。如果要导出形状不规则的区域，则此参数非常有用，因为该工具会以像素分辨率裁剪缓存数据集。</para>
        ///   <para>如果未指定感兴趣区域，则将导出地图的全图范围。</para>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Area Of Interest")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public object _area_of_interest { get; set; } = null;


        /// <summary>
        /// <para>Export Extent</para>
        /// <para><xdoc>
        ///   <para>A rectangular extent defining the tiles to be exported. By default, the extent is set to the full extent of the map service into which you are importing. Note that the optional parameter on this tool, Area Of Interest, allows you to alternatively import using a polygon. It is recommended that you not provide values for both parameters for a job. If values are provided for both parameters, the Area Of Interest parameter takes precedence over Import Extent.</para>
        ///   <bulletList>
        ///     <bullet_item>Default—The extent will be based on the maximum extent of all participating inputs. This is the default.</bullet_item><para/>
        ///     <bullet_item>Current Display Extent—The extent is equal to the data frame or visible display. The option is not available when there is no active map.</bullet_item><para/>
        ///     <bullet_item>As Specified Below—The extent will be based on the minimum and maximum extent values specified.</bullet_item><para/>
        ///     <bullet_item>Browse—The extent will be based on an existing dataset.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>定义要导出的切片的矩形范围。默认情况下，范围设置为要导入到的地图服务的全图范围。请注意，此工具上的可选参数感兴趣区域允许您使用面进行导入。建议您不要为作业的两个参数提供值。如果为这两个参数都提供了值，则感兴趣区域参数优先于导入范围。</para>
        ///   <bulletList>
        ///     <bullet_item>默认值 - 范围将基于所有参与输入的最大范围。这是默认设置。</bullet_item><para/>
        ///     <bullet_item>当前显示范围 - 范围等于数据框或可见显示。当没有活动地图时，该选项不可用。</bullet_item><para/>
        ///     <bullet_item>如下所述 - 范围将基于指定的最小和最大范围值。</bullet_item><para/>
        ///     <bullet_item>浏览 - 范围将基于现有数据集。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Export Extent")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public object _export_extent { get; set; } = null;


        /// <summary>
        /// <para>Overwrite Tiles</para>
        /// <para><xdoc>
        ///   <para>Specifies whether the images in the receiving cache will be merged with the tiles from the originating cache or overwritten by them.</para>
        ///   <bulletList>
        ///     <bullet_item>Checked—The export replaces all pixels in the area of interest, effectively overwriting tiles in the destination cache with tiles from the originating cache.</bullet_item><para/>
        ///     <bullet_item>Unchecked—When the tiles are exported, transparent pixels in the originating cache are ignored by default. This results in a merged or blended image in the destination cache. This is the default.</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para><xdoc>
        ///   <para>指定接收缓存中的图像是与原始缓存中的切片合并还是被它们覆盖。</para>
        ///   <bulletList>
        ///     <bullet_item>选中 - 导出将替换感兴趣区域中的所有像素，从而有效地将目标缓存中的切片覆盖为原始缓存中的切片。</bullet_item><para/>
        ///     <bullet_item>未选中 - 导出切片时，默认情况下将忽略原始缓存中的透明像素。这会导致目标缓存中出现合并或混合的图像。这是默认设置。</bullet_item><para/>
        ///   </bulletList>
        /// </xdoc></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Overwrite Tiles")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public _overwrite_value _overwrite { get; set; } = _overwrite_value._false;

        public enum _overwrite_value
        {
            /// <summary>
            /// <para>OVERWRITE</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("OVERWRITE")]
            [GPEnumValue("true")]
            _true,

            /// <summary>
            /// <para>MERGE</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("MERGE")]
            [GPEnumValue("false")]
            _false,

        }

        /// <summary>
        /// <para>Output Cache Path</para>
        /// <para></para>
        /// <para></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Output Cache Path")]
        [Description("")]
        [Option(OptionTypeEnum.derived)]
        public object _output_cache_path { get; set; }


        public ExportMapServerCache SetEnv()
        {
            base.SetEnv();
            return this;
        }

    }

}